﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.ComponentModel;

namespace DataObjects
{
    public class Vendedor : INotifyPropertyChanged
    {
        private int _Id;

        public int Id
        {
            get { return _Id; }
            set 
            { 
                _Id = value;
                this.NotifyPropertyChanged("VendedorID");
            }
        }

        private string _NomeCompleto;

        public string NomeCompleto
        {
            get { return _NomeCompleto; }
            set 
            { 
                _NomeCompleto = value;
                this.NotifyPropertyChanged("VendedorNomeCompleto");
            }
        }

        private string _NomeSimples;

        public string NomeSimples
        {
            get { return _NomeSimples; }
            set 
            { 
                _NomeSimples = value;
                this.NotifyPropertyChanged("VendedorNomeSimples");
            }
        }

        private string _Logradouro;

        public string Logradouro
        {
            get { return _Logradouro; }
            set 
            { 
                _Logradouro = value;
                this.NotifyPropertyChanged("VendedorLogradouro");
            }
        }

        private string _Numero;

        public string Numero
        {
            get { return _Numero; }
            set 
            { 
                _Numero = value;
                this.NotifyPropertyChanged("VendedorNumero");
            }
        }

        private string _Complemento;

        public string Complemento
        {
            get { return _Complemento; }
            set 
            { 
                _Complemento = value;
                this.NotifyPropertyChanged("VendedorComplemento");
            }
        }

        private string _Bairro;

        public string Bairro
        {
            get { return _Bairro; }
            set 
            { 
                _Bairro = value;
                this.NotifyPropertyChanged("VendedorBairro");
            }
        }

        private string _Cidade;

        public string Cidade
        {
            get { return _Cidade; }
            set 
            { 
                _Cidade = value;
                this.NotifyPropertyChanged("VendedorCidade");
            }
        }

        private string _Estado;

        public string Estado
        {
            get { return _Estado; }
            set 
            { 
                _Estado = value;
                this.NotifyPropertyChanged("VendedorEstado");
            }
        }

        private string _FoneFixo;

        public string FoneFixo
        {
            get { return _FoneFixo; }
            set 
            { 
                _FoneFixo = value;
                this.NotifyPropertyChanged("VendedorFoneFixo");
            }
        }

        private string _Celular;

        public string Celular
        {
            get { return _Celular; }
            set 
            { 
                _Celular = value;
                this.NotifyPropertyChanged("VendedorCelular");
            }
        }

        private string _Email;

        public string Email
        {
            get { return _Email; }
            set 
            { 
                _Email = value;
                this.NotifyPropertyChanged("VendedorEmail");
            }
        }

        private DateTime _DtAdmissao;

        public DateTime DtAdmissao
        {
            get { return _DtAdmissao; }
            set 
            { 
                _DtAdmissao = value;
                this.NotifyPropertyChanged("VendedorDtAdmissao");
            }
        }

        private List<Venda> _Vendas;

        internal List<Venda> Vendas
        {
            get { return _Vendas; }
            set { _Vendas = value; }
        }

        #region INotifyPropertyChanged Members

        public event PropertyChangedEventHandler PropertyChanged;

        private void NotifyPropertyChanged(string name)
        {
            if (PropertyChanged != null)
                PropertyChanged(this, new PropertyChangedEventArgs(name));
        }

        #endregion
    }
}
